<?php
/*
* @desc Inclui a classe Model.
* @param Class
*/
include_once("Model.class.php");

class Localidades extends Model{
	
	//Variavel global de conexao ao BD
	private $mySQL;
	// Variaveis
	public $cp;
	public $local;
	public $msg_localidades;
	
	
	
	/*
	 * @desc Metodo construtor da classe
	 * @param __construct($nome)
	 */
	function __construct($cp, $local)
	{
		// Define o valor default das variaveis
		$this->cp				= $cp;
		$this->local			= $local;
		$this->msg_localidades	= "";
		
		
		/* 
		 * @desc Inclui a classe Banco
		 * @param mySQL = 	Objeto para conexao
		 * 					Instancia um objeto para conexao ao Banco
		 */
		@include_once("Banco.class.php");
     	$this->mySQL = new Banco;
	}
	
	
	
	/*
	 * @desc Adiciona uma nova localidade/cidade
	 * @param Metodo addLocalidades()
	 */
	function addLocalidades()
	{
		// Verifica se o nome da localidade foi digitado
		if ($this->local == "")
		{
			$this->msg_localidades.= "Digite o nome da localidade!";
		}
		else
		{
			// Inclui a localidade no Banco
			// Executa a query (Adiciona nova localidade)
			$result = $this->mySQL->sql("INSERT INTO localidades
										(id, local, data)
										VALUES
										('', '$this->local', now())");
					
			// Verifica se a operacao foi realizada com sucesso
			if($result)
			{
				$this->msg_localidades.= "Localidade adicionada com sucesso!";
			}
			else
			{
				$this->msg_localidades.= "Ocorreu algum erro ao tentar adicionar a nova Localidade! Tente novamente.";
			}
		}
	}
	
	
	
	/*
	 * @desc Altera uma localidade
	 * @param Metodo alterarLocalidades()
	 */
	function alterarLocalidades()
	{
		// Verifica se existe algum dado em branco
	 	if($this->local == "")
	 	{
	 		// Mensagem de erro caso algum dado esteja em branco
	 		$this->msg_localidades.= 'Os dados marcados com asterisco s&atilde;o de preenchimento obrigat&oacute;rio!';
			
	 	}
	 	else
	 	{
	 		// Executa a query (atualiza localidade)
			$result = $this->mySQL->sql("UPDATE localidades SET 
										local = '" . $this->local . "'
										where id = '" . $this->cp . "'");
			
			// Verifica se a operacao foi realizada com sucesso
			if($result)
			{
				$this->msg_localidades.= "Localidade alterada com sucesso!";
			}
			else
			{
				$this->msg_localidades.= "Ocorreu algum erro ao tentar alterar a Localidade! Tente novamente.";
			}
	 	}
	}
	
	
	
	/*
	 * @desc Remove uma localidade
	 * @param Metodo removerLocalidade
	 */
	function removerLocalidade()
	{
		if ($this->cp == "")
	 	{
	 		// Exibe mensagem de erro pois a localidade nao existe
	 		$this->msg_localidades.= "Esta localidade n&atilde;o existe!";
	 	}
	 	else
	 	{
	 		// Executa a query (remove a localidade)
			$result = $this->mySQL->sql("DELETE FROM localidades WHERE id='". $this->cp ."' LIMIT 1");
			// Obtem o numero de linhas da tabela afetado pela consulta
			$num_rows = $this->mySQL->affected_rows;
			
			// Exibe mensagem de sucesso
			if($result and ($num_rows > 0))
			{
				$this->msg_localidades.= 'Localidade removida com sucesso';
			}
			else
			{
				$this->msg_localidades.= "Ocorreu algum erro ao tentar remover a localidade! Tente novamente.";
			}
	 	}
	}
	
	
	
	
	/*
	 * @desc Exibe mensagem de erro/sucesso
	 * @param Metodo mostrarMsg()
	 */
	function mostrarMsg()
	{
	 	// Exibe Mensagem
	 	if($this->msg_localidades)
	 	{
	 		echo "<div class=\"caixa-mensagem\">";
	 		echo $this->msg_localidades;
	 		echo "</div>";
	 	}
	}
}
?>